/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sv.com.intesal.proyecto.sql;

/**
 *
 * @author JM
 */
public class SQLDevolucionProyecto {

    public static final String getMax = "SELECT max(id_dp) as max FROM DEVOLUCION_PROYECTO";
    public static final String insertDevolucionENCA = "INSERT INTO DEVOLUCION_PROYECTO(id_e,id_p,id_u,fecha_dp,fechahora,numero_documento_dp,bloque_dp,observacion_dp)VALUES(?,?,?,?,now(),?,?,?)";
    public static final String insertDevolucionDETA = "INSERT INTO DETA_DEVOLUCION_PROYECTO(id_dm,id_dp,cantidad_d)VALUES(?,?,?)";
    public static final String insertDevolucionENCA_Modificacion = "UPDATE DEVOLUCION_PROYECTO SET id_e=?,id_p=?,fecha_dp=?,numero_documento_dp=?,observacion_dp=? where id_dp=?";
    public static final String deleteDevolucionDetaRow = "DELETE FROM DETA_DEVOLUCION_PROYECTO where id_d=?";
    public static final String getDevoluciones_x_Cliente = "SELECT * FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,DETA_DEVOLUCION_PROYECTO as d where cl.id_c=p.id_c and p.id_p=dp.id_p and dp.id_dp=d.id_dp and cl.id_c=? order by c.id_c,p.fecha_dp,dp.numero_documento_dp";
    public static final String getDevoluciones_x_Proyecto = "";

    /* CONSULTA DEVOLUCION PROYECTO*/
    public static final String getConsultaDevolucionProyecto = "SELECT * FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,EMPLEADO as e where e.id_e=dp.id_e and cl.id_c=p.id_c and p.id_p=dp.id_p and dp.fecha_dp between ? and ? order by cl.id_c,dp.fecha_dp,dp.numero_documento_dp";
    public static final String getConsultaDevolucionProyecto_cliente = "SELECT * FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,EMPLEADO as e where e.id_e=dp.id_e and cl.id_c=p.id_c and p.id_p=dp.id_p and dp.fecha_dp between ? and ? and cl.id_c=? order by cl.id_c,dp.fecha_dp,dp.numero_documento_dp";
    public static final String getConsultaDevolucionProyecto_proyecto = "SELECT * FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,EMPLEADO as e where e.id_e=dp.id_e and cl.id_c=p.id_c and p.id_p=dp.id_p and dp.fecha_dp between ? and ? and p.id_p=? order by cl.id_c,dp.fecha_dp,dp.numero_documento_dp";

    public static final String getDevolucionProyecto = "SELECT * FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,DETA_DEVOLUCION_PROYECTO as d,EMPLEADO as e,MATERIAL_SUCURSAL as ms,MATERIAL as m where m.id_m=ms.id_m and ms.id_dm=d.id_dm and e.id_e=dp.id_e and cl.id_c=p.id_c and p.id_p=dp.id_p and dp.id_dp=d.id_dp and dp.id_dp=? order by cl.id_c,dp.fecha_dp,dp.numero_documento_dp";
    public static final String cambiarEstado = "UPDATE DEVOLUCION_PROYECTO SET estado_dp=? where id_dp=?";

    public static final String getEncaDP = "SELECT * FROM DEVOLUCION_PROYECTO where id_dp=?";
    public static final String getEncaDP_x_Proyecto = "SELECT * FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,EMPLEADO as e where e.id_e=dp.id_e and cl.id_c=p.id_c and p.id_p=dp.id_p and p.id_p=? order by fecha_dp,numero_documento_dp";
    public static final String getDetaDp = "SELECT d.id_d,m.nombre_m,d.id_dm,d.cantidad_d  FROM DEVOLUCION_PROYECTO as dp,DETA_DEVOLUCION_PROYECTO as d,MATERIAL_SUCURSAL as ms,MATERIAL as m where m.id_m=ms.id_m and ms.id_dm=d.id_dm and dp.id_dp=d.id_dp and dp.id_dp=?";

    public static final String setEliminarEnca = "DELETE FROM DEVOLUCION_PROYECTO where id_dp=?";
    public static final String setEliminarDeta = "DELETE FROM DETA_DEVOLUCION_PROYECTO where id_d=?";

    public static final String validarCantidadAnular="select m.nombre_m,d.id_dm,sum(d.cantidad_d) as suma from deta_devolucion_proyecto d ,MATERIAL_SUCURSAL as ms,MATERIAL as m where m.id_m=ms.id_m and ms.id_dm=d.id_dm and d.id_dp=? group by d.id_dm,m.nombre_m;";


    /*REPORTES*/

    /*SELECT s.nombre_s,p.nombre_p,cl.empresa_c,cl.registro_c,cl.nit_c,cl.giro_c,p.descripcion_p, p.direccion_p,p.fecha_inicio_p,p.fecha_finalizacion_p,dp.fecha_dp,dp.fechahora,dp.observacion_dp, dp.bloque_dp,dp.numero_documento_dp,m.nombre_m,m.codigo_barra_m,d.cantidad_d, (e.nombre_e || ' ' || e.apellido_e) nombre ,tc.nombre_tc,tp.nombre_tp FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,DETA_DEVOLUCION_PROYECTO as d,EMPLEADO as e, MATERIAL_SUCURSAL as ms,MATERIAL as m,TIPO_PROYECTO as tp,TIPO_CLIENTE as tc,SUCURSAL as s where m.id_m=ms.id_m and ms.id_dm=d.id_dm and e.id_e=dp.id_e and cl.id_c=p.id_c and tp.id_tp=p.id_tp and tc.id_tc=cl.id_tc and p.id_p=dp.id_p and dp.id_dp=d.id_dp  and s.codigo_s=ms.codigo_s and dp.id_dp=1 order by cl.id_c,dp.fecha_dp,dp.numero_documento_dp*/
    public static final String generarReporte_Detalle="SELECT s.nombre_s,p.nombre_p,cl.empresa_c,cl.registro_c,cl.nit_c,cl.giro_c,p.descripcion_p,p.direccion_p,p.fecha_inicio_p,p.fecha_finalizacion_p,dp.fecha_dp,dp.fechahora,dp.observacion_dp, " +
            "dp.bloque_dp,dp.numero_documento_dp,m.nombre_m,m.codigo_barra_m,d.cantidad_d, (e.nombre_e || ' ' || e.apellido_e) nombre,tc.nombre_tc,tp.nombre_tp " +
            "FROM CLIENTE as cl, PROYECTO as p,DEVOLUCION_PROYECTO as dp,DETA_DEVOLUCION_PROYECTO as d,EMPLEADO as e,MATERIAL_SUCURSAL as ms,MATERIAL as m,TIPO_PROYECTO as tp,TIPO_CLIENTE as tc,SUCURSAL as s  " +
            "where m.id_m=ms.id_m and ms.id_dm=d.id_dm and e.id_e=dp.id_e and cl.id_c=p.id_c and tp.id_tp=p.id_tp and tc.id_tc=cl.id_tc and p.id_p=dp.id_p and dp.id_dp=d.id_dp  and s.codigo_s=ms.codigo_s " +
            "and dp.id_dp=? order by cl.id_c,dp.fecha_dp,dp.numero_documento_dp ";
}
